package com.gobang.modules.message;

import com.gobang.proto.GameProto.MessageType;

import java.util.EnumSet;
import java.util.Set;

/**
 * 消息类型分类工具
 * 用于区分登录前消息和登录后消息
 */
public class MessageTypeCategory {

    /**
     * 登录前消息（不需要验证登录状态）
     * 包括：登录请求、注册请求、心跳等
     */
    private static final Set<MessageType> PRE_LOGIN_MESSAGES = EnumSet.of(
            MessageType.LOGIN_REQUEST,
            MessageType.HEARTBEAT
    );

    /**
     * 判断是否为登录前消息（不需要验证登录状态）
     */
    public static boolean isPreLoginMessage(MessageType type) {
        return PRE_LOGIN_MESSAGES.contains(type);
    }
}
